<?php

namespace Xin\Hint\Contracts;

interface Factory
{

	/**
	 * 使用 Api 提示器
	 *
	 * @return static
	 */
	public function shouldUseApi();

	/**
	 * 使用 Web 提示器
	 *
	 * @return static
	 */
	public function shouldUseWeb();

	/**
	 * 使用指定的提示器
	 *
	 * @param string $name
	 * @return static
	 */
	public function shouldUse($name);

	/**
	 * 获取提示器
	 *
	 * @param string $name
	 * @return HintHandler
	 */
	public function hint($name = null);

}
